package cn.tedu.justone.pack03日期;

import java.time.LocalTime;

/**
 * ZZ：JustOne
 * VX：Andylau2020smile
 * DY：JustOne2018
 * ZT：《》
 */
public class Demo10_LocalTime常用方法 {
    public static void main(String[] args) {
        //LocalTime关注时分秒
        //LocalTime关注时分秒
        //LocalTime关注时分秒

        //-----------------------------------------------------
        //todo:创建对象

        //创建当前时间的LocalTime对象
        LocalTime lt1 = LocalTime.now();
        System.out.println(lt1);//20:37:35.026

        //创建指定时间的LocalTime对象
        LocalTime lt2 = LocalTime.of(8,35,45);
        System.out.println(lt2);//08:35:45

        //创建字符串解析出来的LocalTime对象，注意：每个字段必须是两位
        LocalTime lt3 = LocalTime.parse("09:11:22");
        System.out.println(lt3);//09:11:22

        //-----------------------------------------------------
        //获取字段

        int h = lt3.getHour();//获取时
        System.out.println(h);//9

        int m = lt3.getMinute();//获取分
        System.out.println(m);//11

        int s = lt3.getSecond();//获取秒
        System.out.println(s);//22

        int n = lt3.getNano();//获取纳秒
        System.out.println(n);//0

        //-----------------------------------------------------
        //修改字段，注意：LocalTime对象不可变，修改后返回的是新对象
        LocalTime lt4 = LocalTime.parse("11:11:11");

        LocalTime lt5 = lt4.withHour(22);//修改时
        System.out.println(lt5);//22:11:11

        LocalTime lt6 = lt4.withMinute(22);//修改分
        System.out.println(lt6);//11:22:11

        LocalTime lt7 = lt4.withSecond(22);//修改秒
        System.out.println(lt7);//11:11:22

        LocalTime lt8 = lt4.withNano(1234);//修改纳秒
        System.out.println(lt8);//11:11:11.000001234

        //-----------------------------------------------------
        //加减字段值。。注意：LocalTime对象不可变，修改后返回的是新对象
        LocalTime lt9 = LocalTime.parse("11:11:11");


        LocalTime t1 = lt9.plusHours(2);//增加2小时，也可以写-2实现减去2小时
        System.out.println(t1);//13:11:11
        LocalTime t2 = lt9.minusHours(2);//减去2小时，也可以写-2实现增加2小时
        System.out.println(t2);//09:11:11

        LocalTime t3 = lt9.plusMinutes(2);//增加2分钟，也可以写-2实现减去2分钟
        System.out.println(t3);//11:13:11
        LocalTime t4 = lt9.minusMinutes(2);//减去2分钟，也可以写-2实现增加2分钟
        System.out.println(t4);//11:09:11

        LocalTime t5 = lt9.plusSeconds(2);//增加2秒钟，也可以写-2实现减去2秒钟
        System.out.println(t5);//11:11:13
        LocalTime t6 = lt9.minusSeconds(2);//减去2秒钟，也可以写-2实现增加2秒钟
        System.out.println(t6);//11:11:09

        LocalTime t7 = lt9.plusNanos(200);//增加200纳秒，也可以写-200实现减去200纳秒
        System.out.println(t7);//11:11:11.000000200
        LocalTime t8 = lt9.minusNanos(200);//减去200纳秒，也可以写-200实现增加200纳秒
        System.out.println(t8);//11:11:10.999999800

    }
}












